package com.imooc.imoocbilibili.service;

import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import com.imooc.imoocbilibili.entity.Video;
import com.imooc.imoocbilibili.entity.VideoCoin;
import com.imooc.imoocbilibili.entity.VideoCollection;

import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.Map;

/**
 * 视频投稿记录表
 *
 * @author jl
 * @since 2022-04-10 19:51:13
 */
public interface VideoService extends IService<Video> {

    Page<Video> queryPage(Integer pageNo, Integer pageSize, String area);

    void addVideos(Video video);

    void viewVideoOnlineBySlices(HttpServletRequest request, HttpServletResponse response, String path) throws Exception;

    void addVideoLike(Long videoId);

    void deleteVideoLike(Long videoId);

    Map<String, Object> getVideoLike(Long videoId);

    void addVideoCollection(VideoCollection videoCollection);

    void deleteVideoCollection(Long videoId);

    Map<String, Object> getVideoCollections(Long videoId);

    void addVideoCoins(VideoCoin videoCoin);

    Map<String, Object> getVideoCoins(Long videoId);

    Map<String, Object> getVideoDetails(Long videoId);
}

